package be.vdab.dao;

import java.math.BigDecimal;

import javax.persistence.Query;
import javax.persistence.TypedQuery;

import be.vdab.entities.Artikel;

public class ArtikelDAO extends AbstractDAO {
	public void create(Artikel artikel){
		getEntityManager().persist(artikel);
	}
	public Iterable<Artikel> zoekOpWoord(String woord){
		TypedQuery<Artikel> query = getEntityManager().createNamedQuery(
				"Artikel.zoekOpWoord", Artikel.class);
		query.setParameter("woord", '%' + woord + '%');
		return query.getResultList();
	}
	
	public int prijsVerhoging(BigDecimal factor){
		Query query = getEntityManager().createNamedQuery(
				"Artikel.prijsVerhoging");
		query.setParameter("factor", factor);
		return query.executeUpdate();
	}
	
	public Iterable<Artikel> findAll() {
		  TypedQuery<Artikel> query = getEntityManager().createNamedQuery(
		    "Artikel.findAll", Artikel.class);
		  return query.getResultList();
	}
	public Artikel read(long artikelNr) {
		  return getEntityManager().find(Artikel.class, artikelNr);
	} 
}
